package org.ccams.dao;

import java.util.List;

import org.ccams.domain.TpOutHead;
import org.ccams.util.PageParameter;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

public class TpOutHeadDAO extends SqlMapClientDaoSupport{
	
	/**
	 * 根据page中的参数返回记录 
	 * @return
	 */
	@SuppressWarnings("unchecked")
	public  List<TpOutHead> getTpoutheadByPage(PageParameter page){		
		return getSqlMapClientTemplate().queryForList("tp_out_head.getTpoutheadByPage",page);
	}
	
	public TpOutHead getTpOutHeadByNum(Long num){
		return (TpOutHead)getSqlMapClientTemplate().queryForObject("tp_out_head.getTpoutheadByNum",num);
	}
	
	public TpOutHead getTpOutHeadByOutno(String out_no){
		return (TpOutHead)getSqlMapClientTemplate().queryForObject("tp_out_head.getTpoutheadByOutno",out_no);
	}
	/**
	 * 返回记录行数
	 * @return
	 */
	public Integer getCount(){
		return (Integer)getSqlMapClientTemplate().queryForObject("tp_out_head.getCount");
	}
	/**
	 * 根据审核状态返回记录行数
	 * @param page
	 * @return
	 */
	public Integer getCountByPage(PageParameter page){
		return (Integer)getSqlMapClientTemplate().queryForObject("tp_out_head.getCountByPage",page);
	}
	/**
	 * 插入数据
	 * @param toh
	 * @return
	 */
	public int insertTpouthead(TpOutHead toh) {
		return getSqlMapClientTemplate().update("tp_out_head.insertTpouthead",toh);
	}
	/**
	 * 更新数据
	 * @param toh
	 * @return
	 */
	public int updateTpouthead(TpOutHead toh){
		return getSqlMapClientTemplate().update("tp_out_head.updateTpouthead",toh);
	}
	/**
	 * 删除数据
	 * @param num
	 * @return
	 */
	public int deleteTpouthead(Long num){
		return getSqlMapClientTemplate().delete("tp_out_head.deleteTpouthead",num);
	}
	
	public String getLastOutno(){
		return (String)getSqlMapClientTemplate().queryForObject("tp_out_head.getLastOutno");
	}
}
